/* ================================================
   Perla Costinești – Stylesheet
   ================================================ */

/* Material Symbols */
.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
}
.fill-1 {
  font-variation-settings: 'FILL' 1;
}

/* Hero gradient overlay */
.hero-gradient {
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.3) 0%,
    rgba(0, 0, 0, 0.1) 50%,
    rgba(0, 0, 0, 0.55) 100%
  );
}

/* ---- Masonry gallery ---- */
.masonry-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: 200px;
  gap: 1rem;
}

@media (min-width: 768px) {
  .masonry-grid {
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    grid-auto-rows: 250px;
    gap: 1.5rem;
  }
  .masonry-item:nth-child(3n) { grid-row: span 2; }
  .masonry-item:nth-child(4n) { grid-column: span 2; }
}

/* ---- Hero text – mobile ---- */
@media (max-width: 640px) {
  .hero-title { font-size: 2rem !important; line-height: 1.2 !important; }
  .hero-sub   { font-size: 1rem !important; }
}

/* ---- Mobile menu ---- */
#mobile-menu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}
#mobile-menu.open {
  max-height: 500px;
}

/* ---- Hamburger icon ---- */
.ham-line {
  display: block;
  width: 22px;
  height: 2px;
  background: #1b1b1d;
  border-radius: 2px;
  transition: transform 0.3s, opacity 0.3s;
}
.ham-open .ham-line:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.ham-open .ham-line:nth-child(2) { opacity: 0; }
.ham-open .ham-line:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

/* ---- Section vertical spacing ---- */
.section-py {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media (min-width: 768px) {
  .section-py {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media (min-width: 1024px) {
  .section-py {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}